// 'use strict';
// exports.main = async (event, context) => {
//     // 这里可以编写你的业务逻辑
//     const { userId } = event;
    
//     // 假设我们从数据库中获取用户信息
//     const userInfo = {
//         userId: userId,
//         name: "John Doe",
//         email: "john.doe@example.com"
//     };

//     // 返回用户信息
//     return {
//         code: 0,
//         message: 'success',
//         data: userInfo
//     };
// };

'use strict';
const db = uniCloud.database();

exports.main = async (event, context) => {
    console.log('云函数 getUserInfo 被调用', event); // 打印日志
    const { token } = event;

    // 校验 token 是否有效
    if (!token) {
        return {
            code: -1,
            message: '用户未登录',
            data: null
        };
    }

    // 假设这里有一个校验 token 的函数
    const isValidToken = validateToken(token);
    if (!isValidToken) {
        return {
            code: -1,
            message: 'token 无效',
            data: null
        };
    }

    try {
        const userCollection = db.collection('users');
        const userInfo = await userCollection.doc(userId).get();

        if (userInfo.data) {
            return {
                code: 0,
                message: 'success',
                data: userInfo.data
            };
        } else {
            return {
                code: -1,
                message: '用户不存在',
                data: null
            };
        }
    } catch (error) {
        console.error('获取用户信息失败', error); // 打印错误日志
        return {
            code: -1,
            message: '获取用户信息失败',
            data: null
        };
    }
};

// 校验 token 是否有效（示例函数）
function validateToken(token) {
    // 这里可以实现 token 的校验逻辑
    // 例如：使用 JWT 校验 token 是否有效
    return true; // 假设 token 有效
}